package com.haoniu.module.service.impl;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.haoniu.module.domain.dto.UserWalletOutDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.haoniu.module.mapper.UserWalletOutMapper;
import com.haoniu.module.domain.database.UserWalletOut;
import com.haoniu.module.service.UserWalletOutService;
import com.haoniu.common.support.Convert;

/**
 * 提现 服务层实现
 * 
 * @author houyijun
 * @date 2019-01-25
 */
@Service
public class UserWalletOutServiceImpl implements UserWalletOutService
{
	@Autowired
	private UserWalletOutMapper userWalletOutMapper;

	/**
     * 查询提现信息
     * 
     * @param id 提现ID
     * @return 提现信息
     */
    @Override
	public UserWalletOut selectUserWalletOutById(Integer id) {
	    return userWalletOutMapper.selectUserWalletOutById(id);
	}
	
	/**
     * 查询提现列表
     * 
     * @param userWalletOut 提现信息
     * @return 提现集合
     */
	@Override
	public List<UserWalletOut> selectUserWalletOutList(UserWalletOut userWalletOut) {
	    return userWalletOutMapper.selectUserWalletOutList(userWalletOut);
	}
	
    /**
     * 新增提现
     * 
     * @param userWalletOut 提现信息
     * @return 结果
     */
	@Override
	public int insertUserWalletOut(UserWalletOut userWalletOut) {
	    return userWalletOutMapper.insertUserWalletOut(userWalletOut);
	}
	
	/**
     * 修改提现
     * 
     * @param userWalletOut 提现信息
     * @return 结果
     */
	@Override
	public int updateUserWalletOut(UserWalletOut userWalletOut) {
	    return userWalletOutMapper.updateUserWalletOut(userWalletOut);
	}

	/**
     * 删除提现对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	@Override
	public int deleteUserWalletOutByIds(String ids) {
		return userWalletOutMapper.deleteUserWalletOutByIds(Convert.toStrArray(ids));
	}

	@Override
	public List<UserWalletOutDTO> userWalletOutList(UserWalletOut userWalletOut) {
		return userWalletOutMapper.userWalletOutList(userWalletOut);
	}

	@Override
	public UserWalletOut selectUserWalletOutByUserId(Integer userId) {
		return userWalletOutMapper.selectUserWalletOutByUserId(userId);
	}

	@Override
	public double totalWithdrawMoney() {
		return userWalletOutMapper.totalWithdrawMoney();
	}

	@Override
	public BigDecimal selectUserWalletOutMoney(Integer userId) {
		return userWalletOutMapper.selectUserWalletOutMoney(userId);
	}


}
